Apparatus and method for allocating time slots to nodes without contention in wireless network

ABSTRACT

Provided is an apparatus and method for allocating time slots to nodes without contention in a wireless network. The method for allotting time slots includes: receiveing a packet length and maximum allowable latencies of the nodes and converting them into data in symbol units; determining a beacon order so that a beacon interval representing a length of a superframe is smaller than or equal to a minimum value of the converted maximum allowable latencies; determining a superframe order so that the sum of a length of a beacon frame, a length of a contention access period, and a length of contention free period is smaller than a length of an active portion, based on the converted packet length; and allocating a guaranteed time slot without contention to each node according to an allocation priority order for the nodes.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims priority under 35 U.S.C. §119 to Korean PatentApplication No. 10-2011-0059502, filed on Jun. 20, 2011, in the KoreanIntellectual Property Office, the disclosure of which is incorporatedherein by reference in its entirety.

TECHNICAL FIELD

The following disclosure relates to an apparatus and method forallocating time slots to nodes in a wireless network, and in particular,to an apparatus and method for scheduling a contention free period (CFP)allocating time slots without contention in a wireless sensor networkbased in IEEE 802.15.4 of a beacon-enabled mode, and a recording mediumon which the method is recorded.

BACKGROUND

A wireless sensor network (WSN) is one of essential techniques in theubiquitous era and is greatly highlighted along with the rapiddevelopment of wireless communication and network theories. The wirelesssensor network may be utilized for industrial vehicles, home automation,militaries, agriculture, health care, and other various fields. Thedesign of the wireless sensor network system has a very close relationwith a specific application program field. In the case of an industrialapplication, the wireless sensor network should have features such asreal-time transmission, low energy consumption, high security,scalability and tenacity.

As specifications for physical layers and link layers of such a sensornetwork, IEEE 802.15.4 (Low-Rate Wireless Personal Area Network) issettled, and various application products of ZigBee using the same havebeen put into the market in various fields. In addition, IEEE 802.15.4suggests wireless connection where a physical (PHY) layer and a mediumaccess control (MAC) layer are defined.

After IEEE 802.15.4 is open to the public, many researchers havesuggested a lot of improvements, which result in the improvement ofperformance of the corresponding specifications. For example, aperformance analysis for the GTS allocation mechanism has been alreadyintroduced, and a traffic scheduling method for improving the energyefficiency of a network has been proposed. In addition, the implied GTSallocation mechanism has also been proposed for improving theutilization of GTS bandwidth, and the message scheduling method has beenintroduced for scalability and improvement of the real-time performanceof industrial applications. In addition, the adaptive GTS allocationmethod has been proposed for improving the delay and fairness. However,despite such endeavors, IEEE 802.15.4 still has drawbacks in trafficscheduling due to inherent limitations of the specification.

SUMMARY

An embodiment of the present invention is directed to solvinginconvenience of the limited utilization of a network bandwidth causedby the fact that IEEE 802.15.4 standards are able to allocate 7guaranteed time slots at most in one superframe, overcoming theresultant limit that the real-time transmission is not ensured when morethan 7 guaranteed time slots are requested to one coordinator by enddevices, and solving the problem that such an allocation algorithmdeteriorates the power consumption efficiency in a network.

In one general aspect, a method for allocating time slots to a pluralityof nodes without contention in a predetermined wireless networkincluding the nodes according to an embodiment of the present disclosureincludes: receiving a packet length and maximum allowable latencies ofthe nodes and converting into data in symbol units; determining a beaconorder (BO) so that a beacon interval (BI) representing a length of asuperframe is smaller than or equal to a minimum value of the convertedmaximum allowable latencies; determining a superframe order (SO) so thatthe sum of a length of a beacon frame, a length of a contention accessperiod (CAP), and a length of contention free period (CFP) capable ofallocating the time slots to nodes without contention is smaller than alength of an active portion (superframe duration: SD), based on theconverted packet length; and allocating a guaranteed time slot (GTS)without contention to each node according to an allocation priorityorder for the nodes.

In addition, the method for allocating time slots to the nodes withoutcontention may further include adjusting at least one of the beaconorder and the number of nodes by increasing the determined superframeorder until the time slots are allocated to all nodes included in thenetwork and comparing the determined beacon order with the increasedsuperframe order.

In another aspect, a method for allocating contention free periods tonodes in a wireless network according to IEEE 802.15.4 standardsaccording to another embodiment of the present disclosure includes:receiving a request for allocation of guaranteed time slots from amedium access control (MAC) of a device by a next higher layer; andtransmitting a GTS.request command having 4 bytes of GTS characteristicsfields from the device to a personal area network (PAN) coordinator as aresponse to the request, wherein the GTS characteristics field includes1 byte representing a start superframe, 1 byte representing a GTSallocation interval, and 4 bits representing a start slot.

In addition, the method for allocating contention free periods to nodesmay further include transmitting a beacon frame having a GTS descriptorfield from the PAN coordinator to the device as a response to theGTS.request command, wherein the GTS descriptor field includes 1 byterepresenting a start superframe and 1 byte representing a GTS allocationinterval.

Further, there is provided a computer-readable recording medium on whichprogram for executing the method for allocating time slots to the nodesis recorded.

In another aspect, an apparatus for allocating time slots to a pluralityof nodes without contention in a predetermined wireless networkincluding at least one coordinator and the plurality of nodes accordingto an embodiment of the present disclosure includes: an input unit forreceiving, by the coordinator, a packet length and maximum allowablelatencies of the nodes and converting into data in symbol units; and aprocessing unit for determining, by the coordinator, a beacon order sothat a beacon interval representing a length of a superframe is smallerthan or equal to a minimum value of the converted maximum allowablelatencies, determining a superframe order so that the sum of a length ofa beacon frame, a length of a contention access period, and a length ofcontention free period capable of allocating the time slots to nodeswithout contention is smaller than a length of an active portion basedon the converted packet length, and allocating a guaranteed time slotwithout contention to each node according to an allocation priorityorder for the nodes.

In addition, the processing unit of the apparatus for allocating timeslots to the nodes without contention additionally performs adjusting atleast one of the beacon order and the number of nodes by increasing thedetermined superframe order until the time slots are allocated to allnodes included in the network and comparing the determined beacon orderwith the increased superframe order.

In another aspect, an apparatus for allocating contention free periodsto nodes in a wireless network according to IEEE 802.15.4 standardsaccording to another embodiment of the present disclosure includes a PANcoordinator for receiving a GTS.request command having 4 bytes of GTScharacteristics fields from the node, wherein the GTS characteristicsfield includes 1 byte representing a start superframe, 1 byterepresenting a GTS allocation interval, and 4 bits representing a startslot.

In addition, the PAN coordinator of the apparatus for allocatingcontention free periods to nodes may transmit a beacon frame having aGTS descriptor field to the node as a response to the GTS.requestcommand, wherein the GTS descriptor field includes 1 byte representing astart superframe and 1 byte representing a GTS allocation interval.

Since the present disclosure allocates guaranteed time slots in asuperframe by using the window scheduling algorithm, 7 or more periodicnodes may be received simultaneously in one coordinator while ensuringreal-time transmission, the allocation of bandwidth in the contentionfree period may be greatly improved, and the efficiency caused by energyconsumption in the network may be improved.

Other features and aspects will be apparent from the following detaileddescription, the drawings, and the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

The above and other objects, features and advantages of the presentinvention will become apparent from the following description of certainexemplary embodiments given in conjunction with the accompanyingdrawings, in which:

FIG. 1 is a diagram showing a superframe structure which may be used ina beacon-enabled mode according to IEEE 802.15.4 standards;

FIG. 2 is a diagram showing abbreviations and notations used in theoperating process for allocating a contention free period in embodimentsof the present disclosure;

FIG. 3 is a flowchart illustrating a method for allocating time slots tonodes without contention in a predetermined wireless network including aplurality of nodes according to an embodiment of the present disclosure;

FIG. 4 is a flowchart specifically illustrating a process of determininga beacon order in the method of FIG. 3 according to an embodiment of thepresent disclosure;

FIG. 5 is a flowchart specifically illustrating a process of determininga superframe order in the method of FIG. 3 according to an embodiment ofthe present disclosure;

FIG. 6 is a structural diagram illustrating a process of allocatingguaranteed time slots in the method of FIG. 3 according to an embodimentof the present disclosure;

FIG. 7 is a scheduling algorithm which implements an overall process ofFIG. 3 with pseudo codes according to an embodiment of the presentdisclosure;

FIG. 8 is a diagram illustrating a method for allocating contention freeperiods to nodes in a wireless network pursuant to IEEE 802.15.4standards according to another embodiment of the present disclosure;

FIGS. 9 a and 9 b are diagrams comparatively illustrating a conventionalstandard and a standard adopted by embodiments of the presentdisclosure, respectively for a frame structure on the GTS.requestcommand;

FIGS. 10 a and 10 b are diagrams comparatively illustrating aconventional standard and a standard adopted by embodiments of thepresent disclosure, respectively for the frame structure on GTSinformation of a beacon frame; and

FIG. 11 is a block diagram showing an apparatus for allocating timeslots to nodes without contention in a predetermined wireless networkincluding at least one coordinator and a plurality of nodes according toan embodiment of the present disclosure.

DETAILED DESCRIPTION OF EMBODIMENTS

The advantages, features and aspects of the present invention willbecome apparent from the following description of the embodiments withreference to the accompanying drawings, which is set forth hereinafter.The present invention may, however, be embodied in different forms andshould not be construed as limited to the embodiments set forth herein.Rather, these embodiments are provided so that this disclosure will bethorough and complete, and will fully convey the scope of the presentinvention to those skilled in the art. The terminology used herein isfor the purpose of describing particular embodiments only and is notintended to be limiting of example embodiments. As used herein, thesingular forms “a”, “an” and “the” are intended to include the pluralforms as well, unless the context clearly indicates otherwise. It willbe further understood that the terms “comprises” and/or “comprising”,when used in this specification, specify the presence of statedfeatures, integers, steps, operations, elements, and/or components, butdo not preclude the presence or addition of one or more other features,integers, steps, operations, elements, components, and/or groupsthereof.

Hereinafter, exemplary embodiments will be described in detail withreference to the accompanying drawings.

Prior to describing embodiments of the present disclosure, IEEE 802.15.4standards defining a physical (PHY) layer and a medium access control(MAC) layer for the environment where the embodiments of the presentdisclosure are implemented, namely a low-speed wireless personal areanetwork (WPAN), will be briefly introduced, and structural problemswhich may occur in the environment where the embodiments are implementedwill be proposed. This standards support two modes: a beacon-enabledmode and a non-beacon-enabled mode. Among them, the embodiments of thepresent disclosure proposed below have relation with only thebeacon-enabled mode, and so only the beacon-enabled mode will beintroduced herein.

FIG. 1 is a diagram showing a superframe which maybe used in thebeacon-enabled mode according to IEEE 802.15.4 standards. The superframeis classified into an active portion where only one device may transmitor receive data and an inactive portion where all devices sleep. Theactive portion is divided into 16 slots and includes a beacontransmission period, a contention access period (hereinafter, referredto as CAP) and a contention free period (hereinafter, referred to asCFP). The length of the active portion which is called a superframeduration (hereinafter, referred to as SD) depends on a superframe order(hereinafter, referred to as SO) according to Equation 1 below.SD=aBaseSuperframeDuration×2^(SO)  Equation 1

Here, the variable “aBaseSuperframeDuration” of Equation 1 is one ofconstants defined in IEEE 802.15.4 standards and has 960 symbol values.The superframe order (SO) is one of parameters defined in IEEE 802.15.4standards and has an integer value between 0 and 14. In addition, thelength of one slot (aSlotDuration) is calculated using Equation 2 below.

$\begin{matrix}{{aSlotDuration} = \frac{SD}{16}} & {{Equation}\mspace{14mu} 2}\end{matrix}$

In the beacon transmission period, the coordinator of the networkbroadcasts a beacon including network information and used by an enddevice for accessing and synchronizing the network. An interval of twosuccessive beacons is determined by a beacon order (hereinafter,referred to as BO) which is a parameter according to Equation 3 below,and such an interval representing the length of one superframe is calleda beacon interval (hereinafter, referred to as BI).BI=aBaseSuperframeDuration×2^(BO)  Equation 3

In the beacon-enabled mode, a maximum allowable value of the beaconorder (BO) is 14 and a minimum value is 0. In addition, the superframeorder (SO) should not be greater than the beacon order (BO).

The contention access period (CAP) is used for transmitting commands andaperiodic data and starts instantly after the beacon transmission iscompleted. The above standards state that the CAP should maintain aminimum length of 440 symbols in order to ensure exchanges of commandsof the network.

The contention free period (CFP) starts at the first slot boundary afterthe contention access period (CAP) and includes guaranteed time slots(hereinafter, referred to as GTS.). The guaranteed time slot (GTS) isapplied by the end device for real-time transmission and is allocated bya network coordinator. Among 16 slots, a slot having a greater sequenceis allocated first of all, which means that the slot 15 is allocatedfirst of all in the contention free period (CFP). One guaranteed timeslot (GTS) may include a plurality of time slots, and the number ofslots is determined by the length of real-time data. A maximum number ofguaranteed time slots (GTS) in one superframe is 7.

Meanwhile, like the fact that the MAC layer takes a certain time forprocessing the data received by the PHY layer, IEEE 802.15.4 standardsdefine an interframe space (hereinafter, referred to as IFS) as aminimal separation of two frames transmitted by the device. The size ofthe interframe space (IFS) has a relation with the size of a frame justtransmitted, and, in a case where the size of the frame is not greaterthan 18 bytes, a short interframe space (hereinafter, referred to asSIFS) is used. Meanwhile, a long interframe space (hereinafter, referredto as LIFS) is used as a minimum separation. In a case where the framerequires acknowledgement (hereinafter, referred to as ACK), theinterframe space (IFS) becomes a minimum separation of next frames whichis to be acknowledged and transmitted.

In addition, IEEE 802.15.4 standards define three kinds of essentialtransmission media of 868 MHZ, 915 MHz and 2450 MHz. The modulationmethod, the number (Bts) of data symbols each byte of which is mappedduring the transmission, and symbols rates (R_(s)) are shown in Table 1below.

TABLE 1 Frequency (MHz) Modulation Bts R_(s) 868 BPSK 8 20 915 BPSK 8 402450 O-QPSK 2 62.5

The above Bts and R_(s) will be used for unit conversion in Process 1 ofa scheduling algorithm according to embodiments of the presentdisclosure.

Now, the environments and situations utilized by the embodiments of thepresent disclosure will be simplified and assumed as follows. A networkusing a star topology where one PAN coordinator collecting data and aplurality of end devices detecting data are present is assumed. At thistime, detection data transmitted during the contention free period (CFP)is periodically generated. Each periodic data should be transmittedbefore a next periodic data is generated. Therefore, those data havetheir own maximum allowable data latencies.

IEEE 802.15.4 standards regulate that guaranteed time slots (GTS) notexceeding 7 at most may be allocated in one superframe. In addition,after one guaranteed time slot (GTS) is successfully allocated to aspecific device in the network, the guaranteed time slot (GTS) may bemaintained in all superframes until a deallocation command is generatedby the corresponding device. However, this mechanism is not onlyineffective and but also inflexible for periodic data transmission. Forexample, if a data generation period for one device is longer than twobeacon intervals (BI), 50% or more of the guaranteed time slots (GTS)are not useable. In addition, since more than 7 periodic nodes may notbe set in one coordinator, a serious limitation is present in thenetwork scalability. This means that, in a case where 7 or more periodicnodes are set in the network, real-time transmission may not be ensured.Therefore, in the embodiments of the present disclosure proposed below,a method for scheduling a contention free period (CFP) will be suggestedin order to overborne such a limitation of IEEE 802.15.4.

The embodiments of the present disclosure introduced below focus onindustrial applications of a wireless sensor network, and a new trafficscheduling algorithm based on a window scheduling algorithm (WSA) issuggested. Here, the number of nodes generating periodic data in thenetwork is set to be N. FIG. 2 is a diagram showing abbreviations andnotations used in the operating process for allocating a contention freeperiod in the embodiments of the present disclosure, and allabbreviations stated below are shown in FIG. 2. However, abbreviationsutilized in each detailed operation will be described again.

An input value of the scheduling algorithm according to this embodimentis a set of periodic messages of the network as shown in Equation 4below. The message set (φ) includes an MAC upper-layer packet (M_(I))and the length of maximum allowable latency (φ_(i)) of the node whichgenerates periodic data.Φ={[M _(I),φ_(I) ], . . . ,[M _(N),φ_(N)]}  Equation 4

The output value of the scheduling algorithm determines the guaranteedtime slot (GTS) allocated to each periodic data in the contention freeperiod (CFP) of the superframe. Parameters required for allocating theguaranteed time slot (GTS) include FinalCAPslot_(j), StartSF_(i),PBI_(j), StartSlot_(i), and Ls_(i) as shown in Table 2 below.

TABLE 2 Final CAP slot for the j-th superfame GTS allocation Startsuperframe parameters for GTS allocation Period node i Start Slot GTSLength

In other words, the scheduling algorithm proposed in the embodiments ofthe present disclosure is intended to operate by using input values asin Equation 4 and calculate output values as in Table 2. At this time,the output values are parameters for determining GTS, which correspondto output values which may overcome the conventional limitations of IEEE802.15.4 stated above. Hereinafter, the embodiments of the presentdisclosure will be described in more detail with reference to thedrawings.

FIG. 3 is a flowchart illustrating a method for allocating time slots tonodes without contention in a predetermined wireless network including aplurality of nodes according to an embodiment of the present disclosure.Here, the predetermined wireless network means a wireless network by thebeacon-enabled mode according to IEEE 802.15.4 standards, but it may beextensively applied to wireless sensor networks having similar featuresif the technical means and ideas proposed in the embodiments of thepresent disclosure are identically maintained.

Process 1: Change of Unit of Input Parameter

In Operation 310, a pack length and maximum allowable latencies of nodesare received and converted into data in symbol units. In more detail,since SD, aSlotDuration and BI in Equations 1 and 3 above are stated inIEEE 802.15.4 in symbol units, in Process 1, the unit of message set φfor the symbol is changed by using Equations 5 to 7. For this purpose,values of Bts and R_(s) are proposed in Table 1 above. The purpose ofProcess 1 is to simplify calculations in the following operations.Ms _(i) =M _(i) ×Bts  Equation 5φs _(i)=φ_(i) ×R _(s)  Equation 6

In Equation 5, Ms_(i) represents the length of the MAC upper-layerframe. In addition, through these embodiments, it is necessary toconsider the entire time required for transmitting packets. The entiretime is calculated by adding MAC layer header, PHY layer header,transceiver turn-around time, ACK (if required), and IFS for Ms_(i). Thelength of the message of the node i is corrected according to Equation 7below.L _(i) =Ms _(i)+σ_(i)  Equation 7

Process 2: Determination of Beacon Interval (BI) of Superframe and GTSAllocation Interval (PBI_(i)) for Node i

In Operation 320, the beacon order (BO) is determined so that the beaconinterval (BI) representing the length of the superframe becomes smallerthan or equal to a maximum value of the maximum allowable latencyconverted through Operation 310. Hereinafter, the process of determiningthe beacon order will be described as follows with reference to FIG. 4.

In Operation 321, an initial value of the beacon order is estimated sothat the beacon interval becomes smaller than or equal to the maximumallowable latency converted through Operation 310.

In Operation 322, an allocation interval of guaranteed time slots fornodes is determined by using the window scheduling algorithm. The windowscheduling algorithm is an algorithm which divides one transmissionmedium with a limited bandwidth into a plurality of windows which may beshared by a plurality of nodes, and which is scheduled so that ageneration time of periodic data in the divided window does not exceed apreset threshold value.

In Operation 323, the initial value of the beacon order estimatedthrough Operation 321 is reduced so that the number of guaranteed timeslots in one superframe becomes 7 or less, thereby determining anadjusted final beacon order.

In more detail, in a series of operations above, the initial value ofthe parameter BO is initially estimated, and its final value isdetermined through repeating operations. After the BO is determined, thebeacon interval (BI) is calculated using Equation 3 above, and thetransmission medium is divided into a plurality of superframes by meansof the beacon interval. Each superframe includes GTS allocated to theend device for the real-time transmission. In order to satisfy thedemand on real-time service, the beacon interval may not exceed theminimum allowable latency (φs_(i)) in the message set φ. Since the BI iscalculated using Equation 3, Equation 8 below may be obtained.BI=aBaseSuperframeDuration×2^(BO) ≦φs _(Min)  Equation 8

In Equation 8 above, φs_(Min) represents a minimum value of φs_(i).

In addition, in order to satisfy the demand on energy efficiency, theembodiments of the present disclosure want that Bi has as great value aspossible. For greater BI, both of the inactive portion and the beacontransmission interval become longer, and therefore the energyconsumption in the network is reduced. The standards adopted in thisembodiment are set so that BO has an integer value between 0 and 14 forthe beacon-enabled mode, and therefore the BO is initially set to be amaximum integer value between 0 and 14 which satisfies Equation 8.

After the BI is initially determined, the node i and PBI_(i) arecalculated by using the window scheduling algorithm (S. H. Hong and J.H. Lee, “A Bandwidth Allocation Scheme in Fieldbuses”, InternationalJournal of Control, Automation, and Systems, Vol. 8, No. 4, pp. 831-840,August 2010). The window scheduling algorithm harmonizes PBI_(i) valuesof all nodes in the network, and the PBI_(i) of the node i is determinedusing Equation 9 below.

$\begin{matrix}{{{PBI}_{i} = {{BI} \times 2^{{CO}_{i}}}},{{CO}_{i} = \left\lfloor {\log_{2}\left( \frac{\phi\; S_{i}}{BI} \right)} \right\rfloor},{{\forall i} = {1\mspace{14mu}{to}\mspace{14mu} N}}} & {{Equation}\mspace{14mu} 9}\end{matrix}$

In order to ensure real-time transmission, the period of GTS of the nodei should not exceed its maximum allowable latency. In Equation 9, theCFP order (CO_(i)) for the node i is a new parameter introduced for thescheduling algorithm adopted in the embodiments of the presentdisclosure. The PBI_(i) determined by Equation 9 does not exceed φs_(i),and the PBI_(i) values (i=1 to N) of all nodes are multiples orsubmultiples of other values. The least common multiple of the PBI_(i)is PBI_(Max), and PBI_(Max) means that the allocation of GTS for themessage group φ repeats all PBI_(Max) symbols. Meanwhile, practicalexplanation on the window scheduling algorithm in the above operationsmay defocus the essence of the present disclosure and therefore it isnot provided here.

Now, the number of GTS expected in one superframe for the message set φis determined by Equation 10 below.

$\begin{matrix}{{ExpGTS} = {\sum\limits_{i = 1}^{N}\frac{1}{2^{{CO}_{i}}}}} & {{Equation}\mspace{14mu} 10}\end{matrix}$

Since the standards adopted in the embodiments of the present disclosureset that the number of GTS capable of being allocated in one superframeis 7 at most, if ExpGTS is greater than 7, the message set φ may not bescheduled for the initially determined BI. In the next operation, the BOis initially adjusted so that all messages generated in one superframeare received in slots provided by the superframe. If the BO decreases by1, the BI will be halved according to Equation 3. In this case, theExpGTS will decrease according to Equations 9 and 10. The process ofreducing the BO by 1 repeats until the ExpGTS becomes equal to orsmaller than 7. If the BO reaches 0 and the ExpGTS is still greater than7, the message set φ is not scheduled. It is because the trafficcondition given to the message set φ exceeds the network capacity. Inthis case, it is necessary to adjust the input (φ) by reducing thenumber of nodes in the network.

The procedure for determining the beacon interval (BI) of the superframeand the GTS allocation period for the node i may be adjusted in Process5 below.

Process 3: Determination of Superframe Duration (SD) and GTS Length(Ls_(i)) for Node i

Now, FIG. 3 is referred again to describe Process 3.

In Operation 330, the superframe order (SO) is determined so that thesum of the length of the beacon frame, the length of the contentionaccess period (CAP), and the length of the contention free period (CFP)capable of allocating time slots to nodes without contention is smallerthan the length of the active portion (superframe duration; SD) based onthe packet length converted through Operation 310. Hereinafter, theprocess of determining the superframe order will be described withreference to FIG. 5.

In Operation 331, the initial value of the superframe order is estimatedso that the sum of the length of the beacon frame, the length of theminimum contention access period, and the length of the contention freeperiod is smaller than the length of the active portion based on thepacket length converted through Operation 310.

In Operation 332, the length of the guaranteed time slots for nodes, theminimum length of the contention free period required for allocatinginput values, and the length of the maximum allowable contention freeperiod are calculated based on the packet length converted throughOperation 310.

In Operation 333, an adjusted final superframe order is determined byincreasing the superframe order estimated through Operation 331 so thatthe minimum length of the contention free period calculated throughOperation 332 is smaller than or equal to the length of the maximumallowable contention free period.

The above process will be described in more detail as follows.

In Process 3, the initial value of the parameter SO is estimatedinitially, and its final value is determined through repeatingprocesses. After CO_(i) for each node is determined in Process 2, theestimated number of symbols included in CFP per a superframe may becalculated using Equation 11 below.

$\begin{matrix}{{ExpCFPsym} = {\sum\limits_{i = 1}^{N}\frac{L_{i}}{2^{{CO}_{i}}}}} & {{Equation}\mspace{14mu} 11}\end{matrix}$

Since the sum of the length of the beacon frame, the initial CAP lengthand the CFP length should be smaller than or equal to the length of theactive portion (SD), Equation 12 below may be obtained.BCNsym+aMinCAPlength+ExpCFPsym≦SD=aBaseSuperframeDuration×2^(SO)  Equation12

For energy efficiency, SD as short as possible is desired, and thereforeSO is initially set to be a minimum integer value which satisfiesEquation 12 as shown in Equation 13 below.

$\begin{matrix}{{SO} = \left\lceil {\log_{2}\left( \frac{{BCNsym} + {aMinCAPlength} + {ExpCFPsym}}{aBaseSuperframeDuration} \right)} \right\rceil} & {{Equation}\mspace{14mu} 13}\end{matrix}$

In Equation 13, aSlotDuration may be calculated from the SO by usingEquation 2 above. In this case, Ls_(i) (GTS length for the node i) maybe calculated through Equation 14 below.

$\begin{matrix}{{Ls}_{i} = \left\lceil \frac{L_{i}}{aSlotDuration} \right\rceil} & {{Equation}\mspace{14mu} 14}\end{matrix}$

Now, the estimated number of CFP slots in each superframe is determinedby Equation 15 below.

$\begin{matrix}{{Expslot} = {\sum\limits_{i = 1}^{N}\frac{{Ls}_{i}}{2^{{CO}_{i}}}}} & {{Equation}\mspace{14mu} 15}\end{matrix}$

The number of CFP slots included in each superframe should not besmaller than Ls_(Max) and Expslot. Here, Ls_(Max) represents a maximumvalue of Ls_(i). The number of CFP slots should be as small as possiblein order to save communication resources. Therefore, MinCFPlength is setto be a minimum integer value not smaller than Ls_(Max) or Expslot asshown in Equation 16 below.MinCFPlength=┌max(Ls _(Max),Expslot)┐  Equation 16

Since the standards adopted in the embodiments of the present disclosureare set so that 16 slots are included in the active portion, the maximumallowable number (MaxCFPlength) of slots included in the CFP iscalculated using Equation 17 below.MaxCFPlength=16−BCNCAPlength  Equation 17

Here, BCNCAPlength (the minimum number of slots and CAP used by thebeacon) is determined by Equation 18 below.

$\begin{matrix}{{BCNCAPlength} = \left\lceil \frac{{BCNsym} + {aMinCAPlength}}{aSlotDuration} \right\rceil} & {{Equation}\mspace{14mu} 18}\end{matrix}$

In addition, MinCFPlength should not be greater than MaxCFPlength asshown in Equation 19 below.MinCFPlength≦MaxCFPlength  Equation 19

If MinCFPlength determined by Equation 16 does not satisfy Equation 19,the message set φ is unable to be scheduled for SO initially determinedin Equation 13. However, if the SO increases by 1, aSlotDurationincreases according to Equation 2, Ls_(i) and BCNCAPlength decreasesrespectively according to Equation 14 and Equation 18, and Expslotdecreases according to Equation 15. This principle results in thedecrease of MinCFPlength according to Equation 16 and the increase ofMaxCFPlength according to Equations 17 and 18. In addition, it should benoted that the SO is smaller than BO. If the SO reaches BO and Equation19 is still not satisfied, the message set φ is not scheduled. It isbecause the given traffic condition of the message set φ exceeds thenetwork capacity. In this case, it is required to adjust the input φ bydecreasing the number of nodes in the network.

Meanwhile, the procedure for determining the superframe duration (SD)and the GTS length (Ls_(i)) for the node i may also be adjusted inProcess 5 below.

Process 4: Allocation of GTS for Each Node

Now, FIG. 3 is referred again to describe Process 4.

In Operation 340, the guaranteed time slots (GTS) without contention areallocated to nodes, respectively, according to the allocation priorityorder for nodes. In other words, the operation for allocating theguaranteed time slots determines the allocation priority order for thenodes according to an allocation interval of the guaranteed time slotsand the length of the guaranteed time slots, and allocates theguaranteed time slots to nodes, respectively, according to thedetermined allocation priority order by using the allocation interval ofthe guaranteed time slots.

In more detail, in Process 4, the algorithm according to the embodimentsof the present disclosure allocates suitably CFP slots to nodes,respectively. The input of Process 4 includes MinCFPlength, MaxCFPlengthand φ′. A new message set φ′ is defined with Ls_(i) and PBI_(i) as inEquation 20 below.Φ′={[Ls ₁,PBI₁ ], . . . ,[Ls _(N),PBI_(N)]}  Equation 20

The purpose of Process 4 above is to allocate slots in each superframeto nodes according to the demand displayed by the message set φ′ inEquation 20. By doing so, (i) the number of CFP slots used in eachsuperframe does not exceeds the number (Pslot) of slots included in CFP,and (ii) the number of GTS does not also exceed 7 which is the maximumallowable number (PGTS) of GTS in one superframe. As stated in Equation21 below, Pslot should not be smaller than MinCFPlength of Equation 16and should not be greater than MaxCFPlength of Equation 17. Since theembodiments of the present disclosure desire as small Pslot as possiblein order to save communication resources, the value of Pslot isinitialized to MinCFPlength which is a minimum allowable value.MinCFPlength≦Pslot≦MaxCFPlength  Equation 21

As described in Process 2 above, the GTS allocation for the message setφ′ repeats during the interval of PBI_(Max), and therefore the initialPBI_(Max) allocation is focused. To the node i, the GTS for packettransmission is periodically allocated. If the initial GTS is allocated,other GTSes may be determined according to the allocation interval(PBI_(i)). The initial GTS allocated to the node i may be determined bythe start superframe (StartSF_(i)) where the initial GTS is allocated tothe node i, the slot (StartSlot_(i)) where the GTS for the node istarts, and the identification of the GTS length (Ls_(i)) for the nodei. The GTS allocation is schematically shown in FIG. 6. FIG. 6 is astructural diagram illustrating the process of allocating guaranteedtime slots in the method of FIG. 3 according to an embodiment of thepresent disclosure, where S_(j) represents a j-th superframe inPBI_(Max).

Before the allocation starts, it is necessary to determine theallocation priority order of each node. The allocation priority order(AP_(i)) is selected as a natural number from 1 to N, where a smallernumber means a higher priority order. Each node has various allocationpriority orders which are determined according to the GTS allocationinterval (PBI_(i)) and the GTS length (Ls_(i)). Nodes having smallPBI_(i) are endowed with high allocation priority orders. For nodeshaving the same PBI_(i), a node having a greater GTS length (Ls_(i)) isendowed with a higher priority order. In other words, the processprogresses from the node having a highest allocation priority order tonodes having relatively lower allocation priority orders.

In order to determine StartSF_(i) for each node, it is required to knowthe number (remainedslot_(j)) of unallocated CFP slots and the number(remainedGTS_(j)) of unallocated GTS in S_(j). In the initial stagewhere no GTS is allocated, remainedslt_(j) is identical to the number(Pslot) of slots in CFP, and remainedGTS_(j) is identical to 7 which isthe maximum allowable GTS number (PGTS) in one superframe. The GTS forthe node i may be allocated to only superframes where remainedslot_(j)is not smaller than the GTS length (Ls_(i)) of the node i andremainedGTS_(j) is not smaller than 1. In addition, StartSF_(i) for thenode i should be one of initial 2^(CO1) superframes. By doing so, thereal-time demand may be ensured as determined by Equation 22.StartSF_(i) =S _(min(A∩B))  Equation 22

Here, A and B are endowed by Equation 23 and Equation 24 below,respectively. In Equations 23 and 24, the parameter k is an integervalue between 1 and 2^(COi).A={k:remainedslot_(k) ≧Ls _(i) },kε└1,2^(CO) ^(i) ┘  Equation 23B={k:remainedGTS_(k)≧1},kε└1,2^(CO) ^(i) ┘  Equation 24

After StartSF_(i) is determined, the initial GTS allocated to the node iis determined through Equation 25 below.StartSlot_(i)=16−└Pslot|−remainedslot_(min(A∩B)) ┘−Ls _(i)  Equation 25

If the GTS allocation is completed for all nodes, the final CAP slot(FinalCAPslot_(j)) of S_(j) may be determined as a slot just before theinitial CFP slot.

However, if A∩B in Equation 22 is an empty set, StartSF_(i) may not befound for the node i. In this case, the value of Pslot increases by 1,and the allocation of the message set starts again. However, if thevalue of Pslot reaches MaxCFPlength and the demand for the message setφ′ is not yet satisfied, the algorithm according to this embodiment willproceed to Process 5 in order to correct the BO and SO values.

Process 5: Correction of BO and SO Values or Traffic Condition inMessage Set φ′ Based on Allocation State in Process 4

In Operation 340, the superframe order determined through Operation 320increases until time slots are allocated to all nodes included in thenetwork, and the beacon order determined through Operation 320 iscompared with the increased superframe order to adjust at least one ofthe beacon order and the number of nodes. This operation may beselectively performed.

In more detail, if GTS is not successfully allocated to any node inProcess 4, the SO and BO values respectively determined in Process 3 andProcess 2 should be corrected. This operation is also repeatedlyperformed until GTS is allocated to all nodes in the network. First, inorder to induce the decrease of MinCFPlength and the increase ofMaxCFPlength according to Equation 16 and Equation 17, respectively, itis necessary to increase the SO value. After the SO increases, Ls_(i) iscalculated again according to Equation 14, and Process 4 repeats. The SOshould be smaller than BO, and if it is not true, the SO value may notfurther increase. In this case, the only way for further progression isto decrease the BO value. After the BO decreases, PBI_(i) of Equation 9is calculated again, and the operation returns to Process 3. In Process3, The SO is calculated again for a new value of BO. If suitable valuesof the SO and BO are not found, the message set φ′ is not scheduled. Itis because the given traffic condition of the message set φ′ exceeds thenetwork capacity. In this case, it is necessary to adjust the input φ′by reducing the number of nodes in the network.

FIG. 7 is a scheduling algorithm which implements an overall process ofFIG. 3 with pseudo codes according to an embodiment of the presentdisclosure, which includes all operations of Process 1 and Process 5described above. The pseudo codes may be sufficiently understood basedon the above description about the scheduling algorithm by those havingordinary skill in the art, and therefore they are not described indetail here.

Hereinafter, corrections of existing IEEE 802.15.4 standards forsupporting the scheduling algorithm proposed in the embodiments of thepresent disclosure will be described.

FIG. 8 is a diagram illustrating a method for allocating contention freeperiods to nodes in a wireless network pursuant according to IEEE802.15.4 standards according to another embodiment of the presentdisclosure, where message sequences exchanged between a PAN coordinator10 and a sensor node (device) 20 are shown in order. Particularly, FIG.8 shows a message sequence chart for GTS allocation defined in IEEE802.15.4. In addition, FIGS. 9 a and 9 b are diagrams comparativelyillustrating a conventional standard and a standard adopted byembodiments of the present disclosure, respectively for a framestructure on the GTS.request command. Similarly, FIGS. 10 a and 10 b arediagrams comparatively illustrating a conventional standard and astandard adopted by embodiments of the present disclosure, respectivelyfor the frame structure on GTS information of a beacon frame.

First, in a case where GTS allocation is demanded by a next higher layerfrom MAC of the device, an original MLME-GTS.request is called, andGTS.request command is transmitted from the device. FIG. 9 a shows aconventional frame structure for the GTS.request command, where MHRfield and Command Frame Identifier may be easily understood by thosehaving ordinary skill in the art, and its detailed description maydefocus the essence of the present disclosure and therefore is notprovided here. The length of the GTS characteristics field is 1 byte.First 4 bits represent the length of GTS which is the number of slotsrequested. The fifth bit represents the direction of GTS. If thecorresponding bit is 0, it represents transmission, and if thecorresponding bit is 1, it represents receiving. The sixth bitrepresents GTS allocation and release. If the corresponding bit is 1, itrepresents allocation, and if the corresponding bit is 0, it representsrelease. The last 2 bits are reserved for future use.

After the command is received, the coordinator transmits anacknowledgement message to the device and determines whether there is asufficient space for the device. This determination should be performedby the coordinators of 4 superframes after the request is received. Theallocation result is displayed in the GTS information field of theconventional beacon frame through GTS descriptor as shown in FIG. 10 a.GTS List may be composed of a plurality of GTS descriptors. Thedescriptor remains in the beacon frame for 4 superframes.

In order to apply the scheduling algorithm according to anotherembodiment of the present disclosure as described above, the GTSallocation method defined by IEEE 802.15.4 standards are corrected asfollows.

First, a GTS characteristics field 900 of GTS.request command iscorrected. As described above, each node is allocated to a suitable GTSwhich may be accomplished by specifying a starts superframe(StartSF_(i)), a GTS allocation interval (PBI_(i)), a start slot(StartSlot_(i)) and a GTS length (Ls_(i)). Therefore, as shown in FIG. 9b, 1 byte is added to the start superframe (StartSF_(i)) 910, 1 byte isadded to the GTS allocation interval (PBI_(i)) 920, and 4 bits are addedto the start slot (StartSlot_(i)) 930 to correct the GTS.requestcommand. Since the traffic is deductively scheduled, the GTS requestedby other nodes will not overlap each other as long as the network issuitably set.

In summary, in the method for allocating the contention free period tonodes in a wireless network according to IEEE 802.15.4 standards, if theallocation of a guaranteed time slot is requested from MAC of the deviceby the next higher layer, the GTS.request command having 4 bytes of theGTS characteristics field 900 is transmitted from the correspondingdevice to the PAN coordinator as a response to the request. At thistime, the GTS characteristics field 900 includes 1 byte representing thestart superframe (StartSlot_(i)) 910, 1 byte representing the GTSallocation interval (PBI_(i)) 920 and 4 bits representing the start slot(StartSlot) 930.

Second, the GTS information field of the beacon frame is corrected.Since each device needs to know that the superframe transmits real-timedata, it is necessary to further add one field (hereinafter, referred toas a Current Superframe field) to the GTS information field of thebeacon frame displayed by the current superframe (S_(j)) as shown inFIG. 10 b. Regarding a GTS descriptor 1000 which is one element of GTSList, 1 byte representing a start superframe (StartSF_(i)) 1010 isadded, and 1 byte representing a GTS allocation interval (PBI_(i)) 1020is added. The GTS descriptor of the node i is included in only a beaconof the superframe for the node where GTS is allocated and which appearsfour times in the beacon frame.

In summary, in the method for allocating the contention free period tonodes in a wireless network according to IEEE 802.15.4 standards, abeacon frame having the GTS descriptor field 1000 is transmitted fromthe PAN coordinator to the corresponding device as a response to theGTS.request command. At this time, the GTS descriptor field 1000includes 1 byte representing the start superframe 1010 and 1 byterepresenting the GTS allocation interval 1020.

FIG. 11 is a block diagram showing an apparatus for allocating timeslots to nodes without contention in a predetermined wireless networkincluding at least one coordinator and a plurality of nodes according toan embodiment of the present disclosure. The technical means anddetailed operations of the coordinator 10 and the sensor node 20 havebeen already described through FIG. 3, and therefore they are describedjust briefly here. In addition, it is obvious that the wireless networkmeans the wireless network by the beacon-enabled mode according to IEEE802.15.4 standards.

First, the coordinator 10 generally includes an input unit 13, aprocessing unit 15 and a communication unit 17.

The input unit 13 of the coordinator 10 plays a role of receiving thepacket length and the maximum allowable latency of nodes and convertingthem into data in symbol units. At this time, the input unit 13 is ameans capable of receiving electron-type data, and it may be included inthe communication unit 17 or implemented as an integrated device asnecessary.

The processing unit 15 of the coordinator 10 determines a beacon orderso that the beacon interval representing the length of the superframebecomes smaller than or equal to the minimum value of the maximumallowable latency converted through the input unit 13, determines asuperframe order so that the sum of the length of the beacon frame, thelength of the contention access period, and the length of the contentionfree period capable of allocating time slots to nodes without contentionis smaller than the length of the active portion based on the convertedpacket length, and respectively allocates guaranteed time slots withoutcontention to nodes according to the allocation priority order for thenodes. In addition, the processing unit 15 may additionally perform aprocess of adjusting at least one of the beacon order and the number ofnodes by increasing the determined superframe order until time slots areallocated to all nodes included in the network and comparing thedetermined beacon order with the increased superframe order.

The processing unit 15 has at least one processor to perform a series ofoperations from the input data, and determines and controls controloperations according to the operation result. At this time, storage(memory) required for a series of operations may be separately provided.

Meanwhile, the sensor node 20 may generally include a processing unit 25and a communication unit 27, and more variable hardware and sensors maybe provided as necessary. The processing unit 25 of the sensor node 20may have different roles according to its inherent function but itbasically obeys the level of hardware required in the wireless sensornetwork. In addition, the communication unit 27 may be utilized fortransmitting the data collected by the sensor node 20 to the coordinator10 or communicating with the coordinator 10. Detailed description on thephysical configuration of the sensor node 20 may defocus the essence ofthe present disclosure and therefore it is not provided here.

The industrial wireless communication network demands strict real-timeservice, scalability and flexibility. A conventional IEEE 802.15.4protocol supports real-time transmission by means of the guaranteed timeslot (GTS). However, problems that important limits are present onscalability and feasibility of the network have been pointed out. Theabove embodiments of the present disclosure are proposed to overcomesuch limits, and the various embodiments of the present disclosurepropose a new CFP traffic scheduling algorithm based on the windowscheduling algorithm. Therefore, according to the above embodiments ofthe present disclosure, (i) 7 or more periodic nodes may be receivedsimultaneously while ensuring real-time transmission, (ii) theallocation of bandwidth in CFP may be greatly improved, and (iii) theenergy efficiency in the network may be improved. These advantages maybe obtained by partially correcting the conventional IEEE 802.15.4protocol as described with reference to FIGS. 8 to 10 b.

Meanwhile, the present disclosure may be implemented on acomputer-readable recording medium with codes readable by a computer.The computer-readable recording medium includes all kinds of recordingdevices where data readable by a computer system is stored.

The computer-readable recording medium may be, for example, ROM, RAM,CD-ROM, magnetic tapes, floppy disks, optical data storages, or thelike, and it may also include a device implemented in a carrier wave(for example, transmission through Internet) form. In addition, thecomputer-readable recording medium may be distributed in a computersystem connected by a network so that computer-readable codes are storedand executed in a distributed method. In addition, functional program,codes and code segments for implementing the present disclosure may beeasily inferred by programmers in the art.

The present disclosure has been described based on various embodiments.A person having ordinary skill in the art will understand that thepresent disclosure may be modified without departing from the spirit ofthe present disclosure. Therefore, the disclosed embodiments should beinterpreted not in a limiting aspect but in a descriptive aspect. Thescope of the present disclosure is not defined by the above descriptionbut by the appended claims, and all differences equivalent to thepresent disclosure should be interpreted to be included in the presentdisclosure.

What is claimed is:
 1. A method for allocating time slots to a pluralityof nodes without contention in a predetermined wireless networkincluding the nodes, the method comprising: receiving a packet lengthand maximum allowable latencies of the nodes and converting the packetlength and the maximum allowable latencies into data in symbol units;determining a beacon order so that a beacon interval representing alength of a superframe is smaller than or equal to a minimum value ofthe converted maximum allowable latencies; determining a superframeorder so that the sum of a length of a beacon frame, a length of acontention access period, and a length of contention free period capableof allocating the time slots to nodes without contention is smaller thana length of an active portion, based on the converted packet length; andallocating a guaranteed time slot without contention to each nodeaccording to an allocation priority order for the nodes; wherein saiddetermining of the beacon order includes: estimating an initial value ofthe beacon order so that the beacon interval is smaller than or equal toa minimum value of the converted maximum allowable latencies;determining an allocation interval of the guaranteed time slots for thenodes by using a window scheduling algorithm; and determining anadjusted final beacon order by decreasing the estimated initial value ofthe beacon order so that the number of guaranteed time slots in onesuperframe is 7 or less.
 2. The method according to claim 1, furthercomprising: adjusting at least one of the beacon order and the number ofnodes by increasing the determined superframe order until the time slotsare allocated to all nodes included in the network and comparing thedetermined beacon order with the increased superframe order.
 3. Themethod according to claim 1, wherein the window scheduling algorithmdivides one transmission medium with a limited bandwidth into aplurality of windows so that the transmission medium is shared by theplurality of nodes, and is scheduled so that a generation time of aperiodic data in the divided window does not exceed a predeterminedthreshold value.
 4. The method according to claim 1, wherein saiddetermining of the superframe order includes: estimating an initialvalue of the superframe order so that the sum of the length of thebeacon frame, the length of the minimum contention access period, andthe length of the contention free period is smaller than the length ofthe active portion, based on the converted packet length; calculating alength of the guaranteed time slot for the nodes, a minimum length ofthe contention free period required for allocating an input value, and alength of the maximum allowable contention free period, based on theconverted packet length; and determining an adjusted final superframeorder by increasing the estimated superframe order so that the minimumlength of the calculated contention free period is smaller than or equalto the length of the calculated maximum allowable contention freeperiod.
 5. The method according to claim 1, wherein said allocating ofthe guaranteed time slot includes: determining the allocation priorityorder for the nodes according to the allocation interval of theguaranteed time slots and the length of the guaranteed time slots; andallocating the guaranteed time slots to the nodes, respectively, byusing the allocation interval of the guaranteed time slots according tothe determined allocation priority order.
 6. The method according toclaim 1, wherein the predetermined wireless network is a wirelessnetwork by a beacon-enabled mode according to IEEE 802.15.4 standards.7. A non-transitory computer-readable recording medium on which aprogram for executing the method according to claim 1 is recorded.